#include <stdio.h>

const long long MAX_N = 500;
long long mx[MAX_N+1][MAX_N+1];

/*void PrintMx(int N) {
    for (int j = 1; j <= N; ++j) {
        for (int i = 1; i <= N; ++i)
            printf("%d\t", mx[i][j]);
        printf("\n");
    }
    printf("\n");
}*/

long long CountVariants(int N, int fsh) {
    long long res = 0;

    long long remN = N - fsh;
    for (int j = fsh+1; j <= remN; ++j)
        res += mx[remN][j];

    return res;
}

int main() {
    int N = 0;
    scanf("%d", &N);

    for (int i = 1; i <= N; ++i)
        mx[i][i] = 1;

    //PrintMx(N);

    for (int i = 2; i <= N; ++i)
        for ( int j = 1; j < i; ++j)
            mx[i][j] = CountVariants(i, j);

    //PrintMx(N);

    long long Q = 0;
    for (int j = 1; j < N; ++j)
        Q += mx[N][j];

    printf("%lld\n", Q);

    return 0;
}

